The present invention relates to an apparatus and method for providing textual and graphical displays using hypertext markup language (HTML) in a television decoder. Additionally, HTML is adapted for use in controlling various television functions.
Hypertext Markup Language (HTML) is a system for marking documents to indicate how the document should be displayed, and how various documents should be linked together. HTML has been used extensively to provide documents on the computer communications network known as the Internet. The Internet includes a vast collection of interconnected documents which are stored in computers all over the world in a system known as the World Wide Web (i.e., the Web). The documents are organized into web spaces, where a web space includes a home page and links to other documents which may be in the local web space or in an external web space. Such links are known as hyperlinks. Documents may include moving images, text, graphical displays, and sound.
HTML is a form of Standard Generalized Markup Language (SGML), defined by the International Standards Organization (ISO), reference number ISO 8879:1986. HTML specifies the grammar and syntax of markup tags which are inserted into a data file to define how the data will be presented when read by a computer program known as a browser. The data file, which is typically stored on a Web server, includes one or more Web pages which are visited by users who have computers which may run different browsers. When a page is visited, typically via a telephone connection, HTML data is downloaded to a user's computer. The computer's browser processes the data to format a layout for the page so the page can be viewed by the user on a computer screen.
An SGML document includes three parts. The first part describes the character set, or codes, which are used in the language. The second part defines the document type, and which markup tags are recognized. The third part is known as the document instance and contains the actual text and markup tags. The three parts may be stored in different files. Furthermore, HTML browsers assume that files of different pages contain a common character set and document type, so only the text and markup tags will change for different pages.
The base character set for HTML is Latin-1 (ISO 8859/1), which is an eight-bit alphabet with characters for most American and European languages. The 128-character standard ASCII (ISO 646) is a seven-bit subset of Latin-1. For simplicity and compatibility with different browsers, many Web pages include only an ASCII character set. Furthermore, non-ASCII characters may be defined using sequences of ASCII characters. For example, the character "e" is defined as "&egrave".
HTML characters are enclosed in angled brackets to distinguish them from the page text. The characters may appear alone, or may appear at the start and end of a field of the page text. For example, &lt;P&gt; indicates the start of a new paragraph, while &lt;I&gt; Welcome to my home page&lt;/I&gt; indicates the phrase "Welcome to my home page" should be italicized. Generally, HTML tags provide text formatting, hypertext links to other pages, and links to sound and picture elements. HTML tags also define input fields for interactive Web pages.
The following list identifies some of the more common HTML codes and functions:
______________________________________ HTML Code Description ______________________________________ &lt;A&gt; anchor code - defines a section of text as a hyperlink or target of another hyperlink &lt;blockquote&gt; quoted text &lt;BODY&gt; main portion of page &lt;B&gt; bold face &lt;?-comment-&gt; author comment - does not appear on page &lt;EM&gt; emphasized text, usually italicized &lt;HEAD&gt; header or title &lt;HR&gt; horizontal rule &lt;HTML&gt; denotes an HTML document &lt;I&gt; italicize &lt;BR&gt; line break &lt;LI&gt; list item &lt;UL&gt; unordered list &lt;OL&gt; ordered list &lt;P&gt; start a new paragraph &lt;STRON&gt; strongly emphasize text, usually bold face &lt;TITLE&gt; title of document &lt;TT&gt; typewriter text &lt;U&gt; underline ______________________________________
Moreover, there are currently three standardized levels of HTML. Level 1 defines a baseline level with which all Web browsers must be compatible. Level 2 includes the elements of level 1 in addition to tags for defining user input fields. Level 3 adds markup tags for various features such as tables, figures and mathematical equations. The levels are fully backwards compatible.
Hypertext is so-named because it allows a user to access different pages in different orders using hyperlinks, rather than in a predetermined, linear manner. Moreover, a particular hypertext application known as hypermedia includes elements other than text, such as images, video, and audio. HTML can specify links to multimedia objects. Links in an HTML hypertext page usually appear as highlighted text which is known as the anchor of the link. Moreover, an image, such as an icon, can be an anchor, which is activated, for example, by the user clicking on the icon using a mouse or other pointing device. Furthermore, images known as image maps can include a number of regions which are themselves individual anchors.
An HTML application is made available to users on the Web by storing the HTML file in a directory that is accessible to a server. Such a server is typically a Web server which conforms to a web browser-supported protocol known as Hypertext Transfer Protocol (HTTP). Servers that conform to other protocols such as the File Transfer Protocol (FTP) or GOPHER may also be used but do not support interactive HTML files.
HTTP defines a set of rules that servers and browsers follow when communicating with each other. Typically, the process begins when a user clicks on an icon in an HTML page which is the anchor of a hyperlink, or the user types in a Uniform Resource Locator (URL), described below. A connection is then made to the server at the address and port number specified by the URL. Next, the browser sends a request to retrieve an object from the server, or to post data to an object on the server. The server sends a response to the browser including a status code and the response data. The connection between the browser and server is then closed.
FTP is a file transfer protocol supported by Transmission Control Protocol/Internet Protocol (TCP/IP) protocol stacks. In particular, FTP is session oriented while HTTP is not. Consequently, unlike HTTP, with FTP, the server is required to maintain a list of active clients.
GOPHER is an indexing system that enables a user to access various Internet resources through a menu-driven system.
Other protocols include TELNET, NEWS, or MAILTO. A TELNET program allows a user to connect to another computer and use it as if the user were sitting at the keyboard of the computer. NEWS indicates that a link to a USENET newsgroup should be made, for example, to access a specific news article. MAILTO indicates an Internet Mail Protocol. If a user targets a mail type URL, the browser will open a window to allow the user to create a mail message to be delivered to the indicated e-mail address. The above protocols are standardized by the Internet Engineering Task Force (IETF) and are supported by most web browsers.
The URL is a unique address which identifies virtually all files and resources on the Internet. A URL has the form: EQU method://server:port/path/file#anchor.
The "method" of accessing the resource is the web browser-supported protocol, and may include, for example, HTTP, FTP, GOPHER, TELNET, NEWS, or MAILTO. The "server:port" indicates the name of the server which is providing the resource, and is alternatively known as the Internet domain name. For example, many companies will use their company name as part of the server field. The port designation is the port number on the server, but is usually not used since a default port is assumed. The "path" indicates the directory path to the resource. The file indicates the file name of the resource. The "anchor" indicates the named element in the HTML document. Not all fields are required.
For example, consider the following URL: EQU http://www.company.com/news/june.html.
The access method is HTTP, the server is www.company.com, there is no port specified, the path is news, the file is june.html, and there is no anchor. Examples of FTP, GOPHER, TELNET, NEWS, and MAILTO URLs are, respectively: EQU ftp://ftp.uu.net/doc/literary/obi/World.Factobook; EQU gopher://gopher.micro.umn.edu/; EQU telnet://compuserve.com/; EQU news:alt.cows.moo; and EQU mailto:president@whitehouse.gov.
Moreover, interactive Web applications use a client-server standard known as the Common Gateway Interface (CGI). A CGI program generates HTML in real-time to produce a dynamically generated Web page. CGI programs, or scripts, perform various Web functions. For example, a CGI program known as Imagemap processes imagemaps for servers. Moreover, HTML forms often require CGI scripts to process user-entered information. CGI scripts act as an interface between Web servers and other computer applications, including database managers and order processing systems.
In view of the rapidly increasing use of Web pages and other resources which are created using HTML, it would be advantageous to provide a scheme for adapting such resources for use by consumers and others via television or other broadcast or pre-recorded media. In particular, it would be desirable to provide graphical and textual displays for use with a television for educational and entertainment purposes. Such displays should be compatible to the extent possible with existing transmission and receiving equipment including set-top decoders and the like, and should further be compatible with current communication protocols such as those for transmission of digital television signals via satellite and/or cable plants.
Furthermore, the system should provide the capability to control various television functions such as channel selection, volume, and language preference, in addition to interactive operations such as the purchase of near-video-on-demand programming or other home shopping products or services, as well as non-television appliance functions such as for associated audio equipment, or, lastly, for a home heating and air conditioning system, security system or the like. The present invention provides a system having the above and other advantages.